package com.sagframe.sagacity.sqltoy.plus.multi.query;

import com.sagframe.sagacity.sqltoy.plus.multi.AbstractLambdaMultiWrapper;
import com.sagframe.sagacity.sqltoy.plus.multi.LambdaMultiStepWrapper;

import java.io.Serializable;

public interface LambdaQuery<Children extends AbstractLambdaMultiWrapper<Children>, R> extends Serializable {

    @SuppressWarnings("unchecked")
    LambdaMultiStepWrapper.LambdaFrom<Children> select(R... lambdaColumns);

    @SuppressWarnings("unchecked")
    LambdaMultiStepWrapper.LambdaFrom<Children> select(Class<?> mappingClass, R... lambdaColumns);
}
